Methods and systems for maintaining quality of service (QOS) levels for data transmissions

ABSTRACT

A system is provided for maintaining Quality of Service (“QoS”) parameters of data transmissions. A packet-switched network framework is provided. The network framework includes at least one router for routing the data transmissions over the network framework. The network framework also includes multiple links, including a first link and a second link. The first link forms at least part of a first path over the network framework, and the second link forms at least part of an alternate, second path over the network framework. A link utilization monitor is configured to monitor a link utilization rate of the first link and to determine whether the rate has exceeded a predetermined maximum utilization threshold. The router is configured to reroute data transmissions over the second link when the rate is determined to have exceeded the predetermined maximum utilization threshold.

BACKGROUND

Many types of data transmissions have emerged that require certaintransmission quality levels to maintain the integrity of the data whenthe data is transmitted over packet-switched networks (e.g., internetprotocol networks). Video-on-demand and voice services are examples ofsuch data transmissions. Voice services over internet protocol networks,commonly referred to as VoIP, are an emerging alternative to standardvoice services over circuit-switched telephone networks, largely becauseof the potential cost savings provided by VoIP. By using packet-switchednetworks (e.g., the Internet) to transmit voice services, callers areable to avoid long distance fees associated with using a telephonecarrier's traditional circuit-switched telephony networks.

However, implementation of VoIP has proved to be a challenging task withrespect to providing the same voice quality typically offered bytraditional circuit-switched telephone services. One aspect that makeshigh-quality VoIP a challenging task is congestion of internet protocol(IP) networks. When IP networks become congested, data transmissionsexperience longer transmission delays that may not meet minimum qualitystandards. Moreover, when IP networks are used to transport differenttypes of data (e.g., voice transmissions and more typical types ofdigital data), chances of congestion increase, especially when minimumquality standards are required for more than one particular datatransmission over the network.

Further, the common use of IP networks for transmitting various types ofdata, as well as associated control signaling, tends to complicatetiming issues for data transmissions. Not only does control signalingrequire responses to messages within pre-specified time intervals, asmentioned above, time-criticalness is also required for many types ofmedia data traffic transmissions (e.g., video-on-demand and voiceservices transmissions). The wide variety of timing requirements for thedifferent types of transmissions tends to complicate network timing,which can undesirably affect the quality of transmissions that haveminimum quality standards. In particular, excessive packet loss,transmission delay, or variation in transmission delays (i.e., jitter)may degrade the quality of transmitted data signals, including voiceservices transmissions. Moreover, bandwidth limitations, lengths ofnetwork paths, and other network parameters may also undesirably affectthe quality of data transmissions over IP networks.

Parameters used to define and measure the quality of data transmissionsover IP networks are commonly referred to as quality-of-service (QoS)parameters, which include parameters such as packet loss, delay, andjitter. To help control QoS parameters for data transmissions, manytraditional VoIP services have implemented admission controls forselecting which data transmissions (e.g., which telephone calls) toadmit for transmission over the IP network based on a predefined orderof priority. If, for example, the IP network cannot handle additionaltelephone calls of lower priority than the already admitted telephonecalls, the call admission controls will not admit the additionaltelephone calls for transmission over the IP network. While calladmission controls have helped to prevent instances of voice qualitydegradation by preventing congestion of IP networks, call admissioncontrols have several drawbacks. For example, when call admissioncontrols are relied upon solely or primarily to maintain voice qualityparameters, customer satisfaction is often jeopardized whenever callersare unable to place calls due to a lack of network availability. Theinability to place calls can easily cause would-be callers to feeldissatisfied with the VoIP services offered by service carriers. Inturn, the users' unsatisfactory experiences may cause service carriersto suffer a loss of business, reputation, or goodwill.

In short, conventional IP networks do not transmit data in a manner thatconsistently satisfies minimum quality standards required by many typesof data transmissions (e.g., voice services transmissions).

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate various embodiments and are a partof the specification. The illustrated embodiments are merely examplesand do not limit the scope of the disclosure. Throughout the drawings,identical reference numbers designate identical or similar elements.

FIG. 1 is a block diagram of a system for simulating and monitoring datatransmissions over a network framework, according to one embodiment.

FIG. 2 is a block diagram illustrating another embodiment of the systemof FIG. 1.

FIG. 3 is a chart illustrating measured mean opinion scores (MOS) fordifferent quantities of voice data streams transmitted over the systemof FIG. 2, according to one embodiment.

FIG. 4 is a chart illustrating measured packet loss and link utilizationfor different quantities of voice transmission packet streams beingtransmitted over the system of FIG. 2, according to one embodiment.

FIG. 5 is a block diagram of an operational VoIP network framework formonitoring link utilization and maintaining voice quality of service(QoS) levels based on the monitored link utilization, according to oneembodiment.

FIG. 6 is a flowchart illustrating a method of identifying a linkutilization threshold for a bottleneck link of the system of FIG. 1.

FIG. 7 is a flowchart illustrating a method of maintaining QoSparameters for data transmissions based on link utilization levels.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The presently disclosed methods and systems provide for the maintenanceof quality-of-service (QoS) levels for data transmissions. A networkframework is provided. Data transmissions are transmitted over thenetwork framework. QoS parameters and network link utilization ratesassociated with the data transmissions are monitored, thereby enablingnetwork operators to determine network link utilization thresholds,which are defined as the link utilization rates at which the QoSparameters of the data transmissions begin to degrade belowpredetermined quality standards.

The determined link utilization thresholds may be used to deliver andmaintain data transmissions with desired QoS levels. The utilizationthresholds may be implemented to provide desired QoS levels in links ofthe provided network framework and/or in links of similar operationalpacket-switched networks. By using the determined link utilizationthresholds to limit link utilization rates, the available bandwidth ofpacket-switched network links can be utilized to the extent allowablewithout degrading data quality below the predetermined qualitystandards. Consequently, network resources are allocated so thatsubscribers do not experience undesirable degradations in data qualityor, even worse, not being able to have their data transmissions admittedfor transmission over packet-switched networks. In some embodiments, thedata transmissions comprise voice services transmissions. Certainembodiments of the present systems and methods will now be described indetail.

I. Introduction of Elements

FIG. 1 is a block diagram of a system 100 for simulating and monitoringvoice transmissions over a network framework, according to oneembodiment. The system 100 is configured to monitor QoS parameters andlink utilization rates associated with the simulated voicetransmissions, as described below.

A. Signal Generator

As shown in FIG. 1, signal generators 110-1 and 110-2 (collectively“signal generators 110”) are in connection with respective customer edgerouters 115-1 and 115-2 (collectively “customer edge routers 115”) of anetwork framework 116. In the embodiment of FIG. 1, the signalgenerators 110 are located outside of the network framework 116, and thecustomer edge routers 115 are part of the network framework 116.Connections 118-1 and 118-2 (collectively “connections 118”) between thesignal generators 110 and the customer edge routers 115 may include anyknown media and/or protocols (e.g., Ethernet) capable of carrying datatransmissions. The connections 118 may be direct or indirect connectionsbetween the signal generators 110 and the customer edge routers 115.

The signal generators 110 are configured to make, maintain, andterminate different mixes and loads of data traffic over the networkframework 116. In particular, the signal generators 110 may generatedifferent quantities of data streams (i.e., data transmissions) over thenetwork framework 116. Accordingly, the signal generators 110 are ableto increase and decrease the quantity of data streams that are active onthe system 100. By generating or transmitting data streams, or simulateddata streams, the signal generators 110 are able to generate differenttraffic loads on the network framework 116.

In some embodiments, the signal generators 110 are able to generatevoice services transmissions (e.g., voice telephone calls) in the formof packetized data streams suitable for use with VoIP applications andpacket-switched networks. For example, IP-based telephone call datastreams may be generated in accordance with known protocols for carryingvoice data, including G.711 and G.729b protocols, which are well knownto those skilled in the art. The data streams may comprise real-timetransfer protocol (RTP) streams.

The signal generators 110 may include any device(s) and/or instructionscapable of generating and/or transmitting data streams, including voicetransmission streams suitable for VoIP applications. The devices mayinclude but are not limited to known IP telephones, session initiationprotocol (SIP) telephones, IP/PBXs, servers, gateways (e.g., internetprotocol to public switched telephone network (IP/PSTN) gateways andmedia gateway control protocol (MGCP) gateways), integrated accessdevices (IADs) capable of transmitting voice packet data streams;modems; network interface cards, video servers, and any other devicecapable of providing data streams for transmission over the networkframework 116. In one embodiment, the signal generators 110 includeSIP-based VoIP call generators or verifiers.

In some embodiments, the signal generators 110 may not be limited solelyto generating data transmissions. In particular, the signal generators110 may be configured to receive incoming data transmissions. Forexample, in one embodiment the signal generator 110-1 may transmit atelephone call over the network framework 116 shown in FIG. 1 to thesignal generator 110-2, which will receive the incoming telephone call.Further, the signal generators 110 may include any of the QoS monitoringcapabilities described below. As discussed below in greater detail, QoSmonitoring includes, for example, monitoring parameters (e.g., delay,jitter, packet loss) for an RTP stream, and mapping the parameters tomean opinion score (MOS) for VoIP applications.

While FIG. 1 shows only one signal generator 110-1 in connection withone customer edge router 115-1, those skilled in the art will appreciatethat multiple signal generators 110 may be in connection with andtransmit data streams to one customer edge router 115-1. In other words,multiple signal generators 110 may be connected to the customer edgerouter 115-1 to form a sub-network of endpoints useful for establishingsimulated data transmissions over the network framework 116.

B. Network Framework

The network framework 116 is made of components and links configured toform paths over the network framework 116 and between differentendpoints. The network framework 116 may comprise or be part of apacket-switched network capable of carrying data transmissions betweenendpoints such as the signal generators 110. Accordingly, networkoperators may use the network framework 116 to monitor and determinelink utilization thresholds for links of operational packet-switchednetworks. This may be performed during operation, provisioning,maintenance, or other events associated with packet-switched networks.

Alternatively, the network framework 116 may be configured to emulate atleast part of a packet-switched network. For example, the networkframework 116 may include components suitable for emulatingcharacteristics of components of operational packet-switched networks.Accordingly, the network framework 116 can be used to model links ofpacket-switched networks. Data transmissions can be simulated over thelinks of the network framework 116 and used to determine linkutilization thresholds, which may be implemented in links of operationalpacket-switched networks. The components and links of the networkframework 116 shown in FIG. 1 will now be described in detail.

1. Customer Edge Router

The customer edge routers 115 are configured to receive the data streamsgenerated by the signal generators 110 and to route the data streams toprovider edge routers 130-1 and 130-2 (collectively “provider edgerouters 130”). For data streams traveling through the customer edgerouters 115 in the opposite direction (i.e., from provider edge routers130 toward signal generators 110), the customer edge routers 115 areconfigured to route the data streams to the appropriate signalgenerators 110 or to other destinations.

In one embodiment, the customer edge routers 115 comprise virtualrouters configured to activate and deactivate connective links with theprovider edge routers 130. The customer edge routers 115 may beimplemented using known routing devices. The activation and deactivationof links between the customer edge routers 115 and the provider edgerouters 130 will be described in more detail below.

2. Access Link

Access links 140-1 and 140-2 (collectively “access links 140”) connectthe customer edge routers 115 with the provider edge routers 130. Whendata streams travel over the access links 140 in the direction from thecustomer edge routers 115 to the provider edge routers 130, the accesslinks 140 are referred to as ingress links 140. When the data streamstravel over the access links 140 in the opposite direction, the accesslinks 140 are referred to as egress links 140.

The access links 140 may include any media capable of carrying the datastreams between the customer edge routers 115 and the provider edgerouters 130. For example, the access links 140 may include one or morepermanent virtual circuits (PVCs) (see items 230 of FIG. 2) or virtuallocal area networks (VLANs) configured to provide ingress and egressnetworks or links. In one embodiment, the access links 140 are made upof a plurality of provisioned asynchronous transfer mode (ATM) constantbit rate (CBR) PVCs, which will be understood by those skilled in theart. The PVCs may have different bandwidth capacities. However, in oneembodiment, each of the PVCs has a bandwidth capacity of approximately512 kilobits per second.

Each of the PVCs or VLANs may be individually activated or deactivatedby the customer edge routers 115 and/or provider edge routers 130,thereby allowing the amount of available bandwidth of the access links140 to be adjusted. Consequently, individual PVCs may be activated ordeactivated based on measured utilization rates of the access links 140,as discussed below.

3. Link Utilization Monitor

Link utilization monitors 150-1 and 150-2 (collectively “linkutilization monitors 150”) are in connection with the access links 140and are each disposed between a particular customer edge router 115 anda particular provider edge router 130, as shown in FIG. 1. The linkutilization monitors 150 may be connected with the access links 140 atany point or points along the access link 140. Although not shown inFIG. 1, the link utilization monitors 150 may alternatively be connectedwith the customer edge routers 115 or the provider edge routers 130.

The link utilization monitors 150 may include any device or devices,physical or logical, capable of monitoring and determining linkutilization rates, including devices known in the art. The linkutilization monitors 150 may be stand-alone devices or may be integratedwith other devices. For example, the link utilization monitors 150 maybe integrated with the customer edge routers 115, the provider edgerouters 130, or devices in which the provider edge routers 130 and/orthe customer edge routers 115 are deployed.

Link utilization rate is generally a measure of the fraction orpercentage of the bandwidth capacity of a link that is being utilized bydata transmissions over the link. For example, if a particular link hasa bandwidth capacity of 512 kilobits per second, and 256 kilobits persecond are being transmitted over the link, the utilization of the linkis fifty percent.

As data streams are transported over the access links 140, the linkutilization monitors 150 can dynamically monitor and determine the linkutilization rates of the access links 140. Thus, the link utilizationmonitors 150 are able to track current link utilization rates. Themonitored link utilization rates are useful for determining linkutilization thresholds, which are, in turn, useful for delivering andmaintaining QoS levels for data transmissions, as discussed below.

4. Provider Edge Router

The provider edge routers 130 are configured to receive data streamsfrom the customer edge routers 115 and to route the data streams to corerouters 170-1 and 170-2 (collectively “core routers 170”). For datastreams traveling through the provider edge routers 130 in the oppositedirection (i.e., from provider edge routers 130 toward customer edgerouters 115), the provider edge routers 130 are configured to route thedata streams to the appropriate customer edge routers 115.

In one embodiment, the provider edge routers 130 comprise virtualrouters configured to activate and deactivate the links or networks thatmake up the access links 140 between the provider edge routers 130 andthe customer edge routers 115. The provider edge routers 130 may beimplemented using known routing devices. The activation and deactivationof the access links 140 between the customer edge routers 115 and theprovider edge routers 130 will be described in more detail below.

5. Transport Link

Transport links 180-1 and 180-2 (collectively “transport links 180”)connect the provider edge routers 130 with their respective core routers170. The transport links 180 may include any transmission medium ormedia suitable for packet data stream transmission. In one embodiment,the transport links 180 are made up of asynchronous transfer mode (ATM)optical carrier three (OC 3) media, which are known to those skilled inthe art.

6. Core Router

The core routers 170-1 and 170-2 are able to route data streams betweeneach other over a core network link 190. As known to those skilled inthe art, core routers 170 are typically connection points to a backbonenetwork and can include switching computers equipped to transfer dataover core networks.

7. Core Network Link

The core network link 190 can include any packet-switched network mediumor media capable of carrying data streams between the core routers 170.For example, the core network link 190 may be an internet protocol (IP),multi-protocol label switching (MPLS), or IP/MPLS network medium ormedia. In one embodiment, the core network link 190 includes at leastone packet-over-SONET (POS) optical carrier twelve (OC-12) mediumconnecting the core routers 170 to each other.

C. QoS Monitor

QoS monitors 195-1 and 195-2 (collectively “QoS monitors 195”) areconfigured to monitor end-to-end QoS parameters of data transmissions.The QoS monitors 195 may be configured to monitor QoS parameters atlocations behind the customer edge routers 115. As shown in FIG. 1, theQoS monitors may be connected to the links 118 between the call edgerouters 115 and the signal generators 110. Alternatively, the QoSmonitors 195 may be integrated with the signal generators 110, thecustomer edge routers 115, and/or devices in which the signal generators110 or the customer edge routers 115 are deployed.

The QoS monitors 195 may include one or more devices and/or instructionsfor monitoring various parameters. For example, when data transmissionsare voice-based, the parameters may relate to voice quality and QoS. Forexample, the QoS monitors 195 may be configured to monitor mean opinionscores (MOS), perceptual evaluation of speech quality (PESQ), packetloss, delay, jitter, and other parameters associated with the quality ofdata transmissions. To measure these various QoS parameters, the QoSmonitors 195 may include digital speech level analyzers (DSLAs), VoIPCall analyzers, network protocol analyzers, and any other known devicesand/or computer instructions (e.g., software) useful for measuringnetwork transmission parameters.

The QoS parameters monitored by the QoS monitors 195 are useful fordetermining whether data transmissions are being delivered at a desiredlevel of quality. For example, when the data transmissions comprisevoice services transmissions, it is typically desirable for the voiceservices transmissions to exhibit a PSTN-grade (also known astoll-quality) voice quality, which is often defined as a mean opinionscore (MOS) of at least approximately 4.0. For business-grade voiceservices, a MOS of approximately 3.5 to 4.0 is expected.

By monitoring QoS parameters, data transmission quality can bequantitatively determined. The QoS parameter values can be used bynetwork operators to determine whether data transmissions are at anacceptable quality level by comparing the determined values topredetermined quality thresholds (e.g., a MOS of 4.0 for PSTN-gradevoice services). The determined QoS parameters may then be used toidentify key link utilization rates at which the QoS parametersdeteriorate below the predetermined quality thresholds, which will bediscussed in more detail below with reference to examples of datatransmissions being simulated by another embodiment of the system 100,which embodiment is shown in FIG. 2.

II. Voice Traffic Simulations

FIG. 2 is a block diagram illustrating another embodiment of the system100 of FIG. 1. As shown in FIG. 2, system 200 is similar to the system100 shown in FIG. 1. The system 200 includes Ethernet switches 210-1 and210-2 (collectively “Ethernet switches 210”) configured to form theconnections 118 between the signal generators 110, the QoS monitors 195,and the customer edge routers 115. The customer edge routers 115 are inconnection with the provider edge routers 130. The customer edge routers115 and provider edge routers 130 are implemented as virtual routers inan edge router 220.

The edge router 220 may comprise any known device in which virtualrouters may be implemented to form permanent virtual circuits (PVCs) 230connecting the virtual routers to each other. The PVCs 230 may form theaccess links 140 discussed above. In particular, PVCs 230-1, 230-2,230-3, 230-4, and 230-5 form the access link 140-1 between customer edgerouter 115-1 and provider edge router 130-1, while PVCs 230-6, 230-7,230-8, 230-9, and 230-10 form the access link 140-2 between customeredge router 115-2 and provider edge router 130-2.

While FIG. 2 shows five PVCs 230 forming connections between eachcustomer edge router 115 and provider edge router 130, differentquantities of PVCs 230 may be used to provide different amounts ofbandwidth between the customer edge routers 115 and the provider edgerouters 130. In one embodiment, each of the PVCs 230 has a bandwidthcapacity of approximately 512 kilobits per second.

The PVCs 230 are arranged to provide links forming alternate paths overthe access links 140. For example, PVC 230-1 forms a first link thatmakes up at least part of a first path over the access link 140-1. PVC230-1 forms a second link that makes up at least part of a second pathof the access link 140-1. PVC 230-2 may be configured as an alternate toPVC 230-1. Accordingly, when the PVC 230-1 reaches or exceeds apredetermined utilization threshold, the system 200 may be configured toreroute at least a subset of data transmissions from PVC 230-1 to PVC230-2. The rerouting of data transmissions based on link utilizationrates will be discussed in more detail below.

As with system 100 of FIG. 1, in system 200, the provider edge routers130 are in connection with the core routers 170 by the transport links180, and the core routers 170 are connected to each other by the corenetwork link 190.

System 200 is configured so that data transmissions over the networkframework 116 can be simulated and monitored. In order to simulatenetwork parameters of operational networks, the system 200 may includesoftware or other tools to inject network parameters such as packetloss, delay, jitter, and the like into data transmissions sent overpaths of the network framework 116 of the system 200. In particular,this allows the system 200 to emulate a long-haul core IP network.

To illustrate the capabilities of the system 200 for simulating voicetransmissions, an example of a voice transmission simulation scenariowill now be described in detail. However, other types of datatransmissions (e.g., video streams) may be simulated using the system200. While voice transmissions may flow over the network shown in FIG. 2in either direction (i.e., from the signal generator 110-1 to the QoSmonitor 195-2 and from the signal generator 110-2 to the QoS monitor195-1), for purposes of explanation, simulations involving voicetransmissions in the form of telephone calls generated by the signalgenerator 110-1 and received by the QoS monitor 195-2 will now bedescribed.

To enable voice traffic simulations, the signal generators 110 areconfigured to simulate various traffic loads over one or more segmentsof any of the network paths formed by the system 200. The path for thesimulation example described herein is the path traveled by data streamstransmitted from the signal generator 110-1 to the QoS monitor 195-2.The signal generator 110 may include one or more load generators toproduce different levels of traffic loads on the media path. Otherdevices in the system 200 may also include load generators forsimulating traffic loads on particular segments of network paths of thesystem 200.

By generating various levels of traffic loads over a particular path, orparticular segments of the path, the system 200 is able to measure voicequality in relation to traffic loads (i.e., link utilizations), asdescribed below. Initial measurements may be taken with no load on theparticular path in order to establish baseline network path properties.In one embodiment, the signal generator 110-1 is configured to generateand transmit different traffic loads for predefined time intervals sothat measurements can be taken to help identify changes in QoSparameters as a function of varying traffic loads. For example, thesignal generator 110-1 may produce traffic loads in twenty percentincrements of bandwidth capacity.

In one simulation scenario, three telephone calls are placedsimultaneously by the signal generator 110-1. The telephone calls maycomprise RTP streams generated by the signal generator 110-1 and sentover media particular network path to the signal generator 110-2 or theQoS monitor 195-2. The QoS monitor 195-2 is able to monitor end-to-endQoS parameters and other data associated with the telephone callspassing over the selected network path formed by the system 200. Oncemeasurements have been gathered for the three telephone calls, thenumber of telephone calls is increased to four telephone calls, andassociated data gathered by the QoS monitor 195-2. Then the number oftelephone calls is increased to five and associated data gathered by theQoS monitor 195-2.

In one embodiment, the calls are placed in accordance with G.711, whichis known to those skilled in the art. A G.711-based telephone calltypically utilizes approximately 100 kilobits per second of bandwidth asit traverses a network path. In other voice data simulation scenarios,other telephone call protocols, such as G.729b, may be used.

While the simulation example described herein includes the signalgenerator 110-1 providing IP-based voice signals, any known telephonecall endpoint or transmission device may be connected with the system200 and used to generate telephone calls over the call path formed bythe system 200. For example, the system 200 may be connected withtime-division multiplexing (TDM) devices, class-5 switches, SS7 devices,PSTN devices, servers, IP/PSTN gateways, and other known telephonydevices. Further, simulated voice traffic may be generated and receivedby different call endpoints and devices in connection with the networkframework 116 of the system 200. Other types of devices may also be usedfor simulations of different types of data transmissions.

By simulating various loads of voice traffic over a network path (orsegments of the network path), the system 200 is able to providemeasurements of voice quality. The measurements of voice quality may bein terms of QoS parameters, including MOS, PESQ, delay, jitter, andpacket loss, which are helpful for analyzing the network characteristicsand performance of the media path. As known to those skilled in the art,these QoS parameters affect the voice quality of VoIP transmissions. Forexample, packet loss over a one-hop network typically should not exceedone percent of the transmitted packets. Similarly, MOS should be 4.0 orgreater for toll-quality voice services.

Measurements of end-to-end QoS parameters may be obtained by the QoSmonitors 195 for simulated traffic loads. The QoS parameters provide aquantified measure of voice quality and can be used to analyze voicequality based on bandwidth utilization of links of network path formedby the system 200. For this analysis, link utilization rates of thelinks of the particular network path are monitored. While the system 200may be configured to monitor utilization rates on any of the linksforming any of the paths over the network framework 116, FIG. 2 shows anexample of the ingress link 140-1 being monitored by the linkutilization monitor 150-1 because the ingress link 140-1 is thebottleneck (i.e., the lowest bandwidth capacity) link of the system 200.Because the ingress link 140-1 has the lowest bandwidth capacity of thedifferent links of the network framework 116, the bandwidth utilizationof the ingress link 140-1 prominently affects the QoS of datatransmissions. As shown in FIG. 2, the link utilization monitor 150-2should similarly monitor the bandwidth utilization of the egress link140-2.

As simulated telephone calls are transmitted from the signal generator110-1, over the ingress link 140-1, and to the signal generator 110-2 orthe QoS monitor 195-2, the utilization rate of the ingress link 140-1 ismonitored and compared with the QoS parameters measured by the QoSmonitor 195-2 to determine the link utilization rates at which themeasured QoS parameters are identified as deteriorating below desiredquality thresholds (e.g., a toll-grade MOS or a specific packet-lossrate). FIGS. 3 and 4 illustrate measured relationships of QoS parametersand link utilization rates for the voice transmission simulationscenario described above.

FIG. 3 is a chart of the determined MOS value per telephone call for theabove-described voice transmission simulation scenario. FIG. 3illustrates determined MOS values corresponding to when three, four, andfive active telephone calls are simulated over the network framework116. The vertical axis of the chart represents the MOS value, and thex-axis of the chart represents the number of samples that were taken foreach simulation. As shown in plot 310 of FIG. 3, for the case in whichthree telephone calls are transmitted over a single PVC 230-1 of theingress link 140-1, the determined MOS for each call remains steady at avalue of approximately 4.45.

As the number of active telephone calls over the network framework 116is increased to four, degradation in call quality is observed. As shownby plot 320 in FIG. 3, several mean opinion scores have dropped below avalue of approximately 3.0. As the number of telephone calls isincreased to five, voice quality is even more severely degraded. Asshown by plot 330 in FIG. 3, several telephone calls now have MOS valuesbelow 2.5. The relatively lower MOS values shown in FIG. 3 forquantities of four and five telephone calls is attributable to thepacket loss and delay experienced by the data packets of the voicetransmission streams as the PVC 230-1 of the ingress link 140-1 overwhich the data packets are traveling becomes more congested (i.e.,higher utilization rates). The relationship of MOS to packet loss andlink utilization is further illustrated in FIG. 4.

As shown in FIG. 4, average packet loss increases as the number oftelephone calls over the network framework 116 increases (i.e., linkutilization increases). In FIG. 4, plot 410 represents the linkutilization of PVC 230-1 as a percentage of the bandwidth capacity ofPVC 230-1, and plot 420 represents average percentage of the datapackets of the telephone call data streams that are lost duringtransmission. Measurements of link utilization and packet loss are shownfor three, four, and five telephone calls being active over the networkframework 116. The x-axis of the chart of FIG. 4 represents the numberof active calls being simulated.

As shown in FIG. 4, when three telephone calls are transmitted over PVC230-1, approximately 62% of the bandwidth capacity of the PVC 230-1 isused, and no measurable amount of packet loss is observed. When fourtelephone calls are transmitted, a link utilization rate ofapproximately 83% for PVC 230-1 and a packet loss of approximately0.001% are observed. In the case of five telephone calls beingtransmitted, a packet loss of approximately 2.6% is observed, and thelink utilization rate of PVC 230-1 is approximately 103%. Thus, at fivetelephone calls, the link utilization rate exceeds the link capacity byapproximately three percent.

From FIGS. 3 and 4, as well as the simulation described above, it can beseen that as link utilization increases beyond a certain utilizationthreshold, several of the telephone calls currently admitted fortransmission over the network framework 116 of system 200 experiencedegradation in voice quality. Key utilization rates associated withvoice quality deteriorations can be determined from the telephone callsimulations of the system 200. For example, when PSTN-grade call quality(MOS of approximately 4.0 or greater) is desired, FIGS. 3 and 4 showthat a link utilization rate not greater than approximately 60% alongthe ingress link 140-1 will consistently maintain a MOS that issatisfactory for PSTN-grade quality. This relationship is determinedbased on the measured data for three active telephone calls over PVC230-1 of the network framework 116. Observation of QoS parameters forthree telephone calls identified consistently acceptable MOS valuesabove PSTN-grade call quality and a corresponding link utilization rateof approximately 62% of link capacity.

The simulation scenario described above is merely illustrative. System200 is able to simulate various voice traffic loads (i.e., linkutilization rates) along any different path segment of the networkframework, including any of the PVC 230. Further, data types other thanvoice transmissions may be simulated. Accordingly, operators are able touse the system 200 to identify link utilization rates of network links(e.g., a bottleneck link) that correspond with degradations in datatransmission quality below desired levels.

The identified utilization rates may be used as link utilizationthresholds for maintaining desired quality levels by limiting linkutilization to rates that do not exceed the link utilization thresholds.To maintain desired quality levels, the system 200 may provide foradjusting the amount of active bandwidth by activating and/orde-activating network links in order to maintain link utilization ratesbelow the predetermined link utilization thresholds. The adjusting ofactive bandwidth based on predetermined link utilization thresholds canbe implemented in the systems 100 and 200, as well as in operationalnetworks having frameworks similar to those of systems 100 and 200, asdiscussed below.

III. Maintaining Link Utilization Rates

Returning to FIG. 2, once data traffic simulations have been performedand the link utilization thresholds determined, the link utilizationthresholds may be integrated into the system 200 to maintain desiredlevels of data transmission quality. This can be done by configuring thesystem 200 to maintain link utilization rates at or below the linkutilization thresholds. As a result, QoS parameters of voice serviceswill not deteriorate below desired quality thresholds.

As data streams are transmitted over a particular path of the networkframework 116, link utilization rates are monitored for selected links.For example, the link utilization monitor 150-1 is configured to monitorlink utilization rates of any of the PVCs 230 of the ingress link 140-1.The system 200 compares the monitored link utilization rates with thelink utilization thresholds. If the link utilization rates exceed thelink utilization thresholds, the system 200 recognizes that additionalbandwidth should be provided to reduce the link utilization rate of thelink(s) being monitored. The system 200 is able to provide notice tonetwork operators to indicate that additional bandwidth should beactivated. Additional bandwidth may be activated by operators usinginterfaces with the edge router 220 of FIG. 2. It is also anticipatedthat known techniques may be implemented in the system 200 forautomatically activating additional bandwidth in response to linkutilization rates exceeding predetermined thresholds.

To illustrate the maintaining of data transmission quality by managingbandwidth in response to monitored link utilization rates, reference maybe made to the link utilization rates of the ingress link 140-1 of thesystem 200. For the simulation scenario described above, a linkutilization threshold is identified for the ingress link 140-1. Based onthe measurements shown in FIGS. 3 and 4, in one embodiment the linkutilization threshold may be set to approximately 60% because at a linkutilization rate of approximately 62%, the MOS values for each telephonecall remains above PSTN-grade quality (MOS of 4.0). However, at autilization rate of approximately 83%, several telephone calls exhibitMOS values below PSTN-grade quality. That is, the MOS values of allcalls degrade since transmission capacity is shared by all the sessions(calls).

The determined link utilization threshold (e.g., approximately 60%) maybe implemented in the system 200 in order to maintain link utilizationrates not in excess of the threshold. As data streams are transmittedover the ingress link 140-1, the link utilization monitor 150-1 monitorsthe utilization rate of the access link 140-1. More specifically, thelink utilization monitor 150-1 monitors the link utilization rate ofeach active PVC 230 of the ingress link 140-1. When the link utilizationmonitor 150-1 determines that a link utilization rate of an active PVC230 has exceeded the predetermined utilization threshold, the system 200may activate one or more additional PVCs 230 of the ingress link 140-1in order to increase the amount of available bandwidth. Telephone callsmay then be rerouted over the newly activated PVCs 230 to decrease theutilization rate of the monitored PVC 230.

Conversely, minimum link utilization thresholds may be implemented toprevent an excessive number of PVCs 230 from remaining active whenutilization rates are low. For example, if three PVCs 230 are active andcarrying telephone calls at low enough rates that two PVCs 230 couldtransmit the calls without exceeding the predetermined maximumutilization thresholds, then one of the active PVCs 230 may bedeactivated to conserve network resources.

PVCs 230 may be activated and deactivated using techniques known tothose skilled in the art. In the system 200 of FIG. 2, the customer edgerouters 115 and/or provider edge routers 130 may be configured toactivate and deactivate the PVCs 230 between them. As known to thoseskilled in the art, interfaces (not shown) to the customer edge routers115 and/or the provider edge routers 130 may be provided to allownetwork operators to control the activation and/or deactivation of thePVCs 230. Accordingly, the system 200 may be configured to providenotification to network providers when it is determined that availablebandwidth should be increased or decreased to appropriately accommodatethe monitored link utilization rates. In this manner, resources aremanaged based on the monitored link utilization rates, and datatransmission quality is maintained at desired levels.

It is also anticipated that known or future techniques for automaticallyactivating and deactivating available link bandwidth may be used in thesystem 200 to automatically manage available bandwidth based onmonitored utilization rates.

The above-described example of identifying and using link utilizationthresholds to maintain QoS levels is merely illustrative. Different linkutilization thresholds may be identified and implemented for differentsegments of different networks and for different types and mixes of datatransmissions. Further, different QoS parameters, or differentcombinations of QoS parameters, may be monitored as used as thresholdsto maintain data transmission quality above desired levels. For example,packet loss thresholds may be determined, monitored, and used tomaintain desired levels of data transmission quality. In addition, othertechniques for adjusting active or available bandwidth based onmonitored QoS parameters may be used in some embodiments.

The techniques described above for maintaining desired levels of qualityfor data transmissions are not limited to use with the systems 100 and200. The QoS parameter thresholds (e.g., link utilization thresholds)determined using the systems 100 and 200 can also be implemented inoperational networks having designs similar (e.g., having a similarnumber of call legs) to the network frameworks 116 used for simulatingdata traffic to determine QoS parameter thresholds, as described above.For example, FIG. 5 is a block diagram of a network 500 that can be usedas a test bed network as described above in relation to systems 100 and200 and/or as an operational network configured to maintain and delivera desired level of quality by adjusting the available bandwidth ofnetwork links (e.g., a bottleneck link) based on predetermined linkutilization thresholds. While FIG. 5 shows the network 500 being used totransmit voice services transmissions, those skilled in the art willunderstand that the network 500 may be used to maintain desired qualitylevels for other types of data, or various mixes of different types ofdata, being transmitted over the network 500.

A. Layer-2 Aggregation Switch

The network 500 includes layer-2 aggregation switches 510-1 and 510-2(collectively “L2 aggregation switches 510”) arranged to communicatewith data endpoints, including IP endpoints 515-1 and 515-2(collectively “IP endpoints 515”) and TDM endpoints 520-1 and 520-2(collectively “TDM endpoints 520”). The L2 aggregation switches 510 areconfigured to receive voice transmissions generated by the dataendpoints and direct the voice transmissions over the access links 140to appropriate provider edge routers 130. The L2 aggregation switches510 may include devices known in the art for receiving and directingdata transmissions.

B. IP Endpoints

The IP endpoints 515 can include any known device or devices forgenerating, transmitting, and/or receiving voice packet datatransmissions, including but not limited to known IP telephones (e.g.,session initiation protocol (SIP) telephones), servers, and integratedaccess devices (IADs) capable of transmitting and receiving voice packetdata streams.

C. TDM Endpoints

The TDM endpoints 520 can include any known device or devices forgenerating, transmitting, and/or receiving TDM and/or PSTN voicetransmissions, including but not limited to standard telephones known tothose skilled in the art.

The TDM endpoints 520 are connected to the L2 aggregation switches 510by internet protocol to public-switched telephone network (IP/PSTN)gateways 525-1 and 525-2, which are known to those skilled in the art.The TDM endpoint 520-2 shown in FIG. 5 is connected to the IP/PSTNgateway 525-2 by a public-switched telephone network (PSTN) 530 as willbe understood to those skilled in the art.

Although not shown in FIG. 5, other known call endpoints andtransmission points may be connected with the network 500 and configuredto send and/or receive voice data transmissions over the network 500.For example, PSTN connections to the network 500 may include but are notlimited to SS7 links to signal transfer points (STPs), or T1/IMT and FXlinks to class-5 switches, which will be understood by those skilled inthe art.

D. Softswitch

A softswitch 540 is in connection with the layer-2 aggregation switch510-2 and is configured with instructions for controlling the routing ofvoice transmissions to appropriate provider edge routers 130 for ingresssignals and to appropriate call endpoints for egress signals. Thesoftswitch 540 is able to control routing performed at the layer-2aggregation softswitches 510-1 and 510-2. The softswitch 540 may beimplemented using devices known to those skilled in the art.

E. Provider Edge Router

The provider edge routers 130 implemented in the network 500 shown inFIG. 5 are configured to receive data streams (e.g., telephone calls)from the L2 aggregation switches 510 and to route the data streams overthe transport links 180 to the core routers 170 for transmission over acore network 550. For data streams traveling through the provider edgerouters 130 in the opposite direction (i.e., from provider edge routers130 toward the call endpoints, the provider edge routers 130 areconfigured to route the data streams to appropriate L2 aggregateswitches 510.

As discussed above, the provider edge routers 130 implemented in theoperation network of FIG. 5 may comprise virtual routers configured toactivate and deactivate links making up the access links 140 andconnecting the provider edge routers 130 with the L2 aggregationswitches 510.

F. Core Network

The core network 550 may comprise any known packet-switched networkcapable of carrying packet data streams (e.g., voice-over-IP datastreams). The core network 550 may comprise an IP, multi-protocollabel-switched (MPLS), and/or IP/MPLS network or networks.

To maintain the quality of data transmitted over the network 500, linkutilization rates of the network links may be monitored as discussedabove. For example, for data streams traveling from layer-2 aggregationswitch 510-1 to provider edge router 130-1, the link utilization monitor150-1 monitors the link utilization of the ingress link 140-1. When thelink utilization monitor 150-1 detects a link utilization rate as havingexceeded a predetermined utilization threshold, the steps discussedabove may be executed to maintain utilization of the ingress link 140-1below the predetermined utilization threshold. If link utilization ratesexceed the predetermined utilization threshold, for example, additionalbandwidth may be activated, as discussed above. In a similar manner, iflink utilization rates are below predetermined minimum thresholds,bandwidth may be deactivated as long as the bandwidth remaining activeis sufficient to maintain utilization rates at or below thepredetermined maximum utilization thresholds.

IV. Process Flow Views

FIGS. 6 and 7 illustrate examples of methods of determining appropriatelink utilization thresholds useful for maintaining QoS levels of datatransmissions by allocating bandwidth based on monitored linkutilization rates. While the methods of FIGS. 6 and 7 are directed tobottleneck links of a network, those skilled in the art will understandthat the steps of the methods may be applied to other network links.

FIG. 6 is a flowchart illustrating a method of identifying a linkutilization threshold for a bottleneck link of the system 100 of FIG. 1.As shown in FIG. 6, data traffic is simulated over the bottleneck linkat step 605. Step 605 may be performed according to the description ofsimulating data transmissions over the network framework 116 describedabove. QoS parameters associated with the simulated data traffic aremonitored at step 610. The QoS parameters may be monitored at thebottleneck link (e.g., the ingress link 140-1) of a network designed forsimulating data transmissions over packet-switched networks, asdiscussed above. While potentially any QoS parameter(s) may be monitoredat step 610, in one embodiment bandwidth utilization rate of at leastone link is monitored.

At step 620, it is determined whether the monitored QoS parameters areabove predetermined quality thresholds. The predetermined qualitythresholds may be defined by a network operator based on particularapplications of the network. A network operator may set a predeterminedquality threshold to correspond with a desired level of service. Forexample, a network operator may set a threshold value for QoS parameterssuch as packet loss, bandwidth utilization rate, transmission delay,jitter, or any other parameter useful for measuring quality of datatransmissions. For a VoIP application for example, a predeterminedquality threshold may be set to a MOS value of 4.0 for PSTN-grade voicetransmissions. If it is determined at step 620 that QoS parameters areabove the predetermined quality thresholds, as defined by a networkoperator, processing returns to step 610 for continued monitoring of QoSparameters.

On the other hand, if it is determined at step 620 that the monitoredQoS parameters are not above the predetermined quality thresholds,processing moves to step 630. At step 630, a link utilization rate of abottleneck link is identified, as discussed above. The link utilizationrate corresponds with the utilization rate at which the QoS parametersdeteriorate below the predetermined quality thresholds. The linkutilization rate may be implemented in networks as a link utilizationthreshold to maintain the quality of the QoS parameters, as shown inFIG. 7.

FIG. 7 is a flowchart illustrating a method of maintaining QoS levelsfor data transmissions based on the link utilization rates determined inFIG. 6. At step 710, the bottleneck link of a network is identified.This determination may be based on bandwidth capacity. The bottlenecklink is typically the ingress link 140-1 of a network. Processing thenmoves to step 720, at which step bandwidth utilization rates of thebottleneck link are monitored, as discussed above.

At step 730, it is determined whether the determined link utilizationrate has exceeded a predetermined utilization threshold. If it is foundat step 730 that the utilization rate has not exceeded the predeterminedutilization threshold, processing returns to step 720 for continuedmonitoring of the utilization rates.

On the other hand, if it is determined at step 730 that the utilizationrate has exceeded the predetermined utilization threshold, processingmoves to step 740. At step 740, additional bandwidth is activated anddata transmissions rerouted to distribute the data streams beingtransmitted over the ingress link 140-1 among additional links, therebymaintaining utilization rates below the predetermined utilizationthresholds. Processing then returns to step 720 for continued monitoringof the utilization rates.

By activating and deactivating bandwidth based on utilization rates andutilization thresholds, desired levels of data transmission quality aremaintained and delivered while using an appropriate amount of bandwidthresources for the measured amounts of traffic on network links.Bandwidth can be activated as traffic load increases so that additionaldata streams are not rejected from network admission based on priority.In some embodiments, known admission controls can be made secondary tothe bandwidth utilization techniques discussed herein so that datastreams will not be rejected from admission to the network unlesstraffic loads are extreme enough that all available bandwidth is activeand being utilized at or near the determined utilization thresholds.

V. Alternative Embodiments

The preceding description has been presented only to illustrate anddescribe embodiments of the invention. It is not intended to beexhaustive or to limit the invention to any precise form disclosed. Theinvention may be practiced otherwise than is specifically explained andillustrated without departing from its spirit or scope. For example,while several examples relating to voice services transmissions of IPnetworks have been described herein, the invention may be practiced fordifferent types of data transmissions. It is intended that the scope ofthe invention be defined by the following claims.

1. A system for maintaining at least one quality-of-service (QoS)parameter associated with at least one data transmission between atleast a first endpoint and a second endpoint, the system comprising: apacket-switched network framework configured to carry the at least onedata transmission from the first endpoint to the second endpoint, saidpacket-switched network framework including: at least one routerconfigured to route the at least one data transmission over saidpacket-switched network framework; and a plurality of links including afirst link and a second link, said first link forming at least part of afirst path between the first endpoint and the second endpoint, and saidsecond link forming at least part of a second path between the firstendpoint and the second endpoint; a quality-of-service (QoS) monitorconfigured to identify the at least one QoS parameter of the at leastone data transmission and determine whether the at least one QoSparameter is lower than a predetermined quality threshold; and a linkutilization monitor configured to monitor a first link utilization rateassociated with said first link and a second link utilization rateassociated with said second link and to determine whether said first orsecond link utilization rate has exceeded a predetermined maximumutilization threshold and a predetermined minimum utilization threshold;wherein said at least one router is configured to reroute at least asubset of the at least one data transmission over said second linksimultaneously with routing at least a subset of the at least one datatransmission over said first link based on said QoS parameter beinglower than the predetermined quality threshold and in response to saidlink utilization monitor determining that said first link utilizationrate associated with said first link has exceeded said predeterminedmaximum utilization threshold, and said at least one router isconfigured to deactivate said second link if it is determined that saidsecond link utilization rate is lower than said predetermined minimumutilization threshold and said QoS parameter exceeds the predeterminedquality threshold; wherein in response to said deactivating said secondlink, re-routing said subset of the at least one data transmission oversaid first link.
 2. The system of claim 1, wherein said at least onerouter is further configured to activate said second link in response tosaid link utilization monitor determining that said link utilizationrate associated with said first link has exceeded said predeterminedmaximum utilization threshold.
 3. The system of claim 1, wherein saidfirst link comprises a bottleneck link of said packet-switched networkframework.
 4. The system of claim 1, wherein said predetermined maximumutilization threshold is indicative of the link utilization rate of saidfirst link at which the at least one QoS parameter deteriorates to avalue lower than the predetermined quality threshold.
 5. The system ofclaim 4, wherein the at least one data transmission comprises at leastone voice service transmission, and said predetermined quality thresholdcomprises a mean opinion score (MOS) corresponding with toll-grade orbusiness-grade voice services.
 6. The system of claim 1, wherein saidfirst link and said second link comprise permanent virtual circuits orvirtual local area networks.
 7. The system of claim 1, wherein said linkutilization monitor is configured to provide notification to a networkoperator in response to said link utilization rate being determined tohave exceeded said predetermined maximum utilization threshold or to belower than said predetermined minimum utilization threshold.
 8. Thesystem of claim 7, wherein said at least one router includes aninterface providing the network operator with controls for activating ordeactivating any of said plurality of links.
 9. The system of claim 1,wherein said at least one router includes a customer edge router and aprovider edge router, and said first link and said second link are eachdisposed between said customer edge router and said provider edgerouter.
 10. The system of claim 1, wherein said predetermined maximumlink utilization threshold is no greater than approximately sixtypercent of the bandwidth capacity of said first link.
 11. The system ofclaim 1, wherein said at least one router is configured to adjust theamount of available bandwidth between the first endpoint and the secondendpoint by activating or deactivating any of said plurality of links,said activating and deactivating being based on said link utilizationrate.
 12. The system of claim 1, wherein said link utilization monitoris configured to set a value of said predetermined maximum utilizationthreshold based on the link utilization rate at which the at least oneQoS parameter is determined to deteriorate below said predeterminedquality threshold.
 13. The system of claim 1, wherein saidpacket-switched network framework is associated with at least one of anoperational packet-switched network and an emulated packet-switchednetwork.
 14. A method of maintaining at least one quality-of-service(QoS) parameter associated with at least one data transmission, themethod comprising: identifying the at least one QoS parameter of the atleast one data transmission prior to transmitting the at least one datatransmission over a first link; determining whether the at least one QoSparameter is lower than a predetermined quality threshold; monitoring autilization rate of said first link as the at least one datatransmission is transmitted over said first link; determining whethersaid utilization rate has exceeded a predetermined maximum utilizationthreshold; rerouting at least a subset of the at least one datatransmission over a second link simultaneously with transmitting atleast the subset of the at least one data transmission over said firstlink based on the at least one QoS parameter being lower than thepredetermined quality threshold and in response to a determination thatsaid utilization rate has exceeded said predetermined maximumutilization threshold, said second link being an alternative to saidfirst link; determining whether a second utilization rate associatedwith said second link has reached a predetermined minimum utilizationthreshold and whether the QoS parameter exceeds the predeterminedquality threshold; and de-activating said second link in response to adetermination that said second utilization rate is lower than saidpredetermined minimum utilization threshold and the QoS parameterexceeds the predetermined quality threshold; wherein in response to saiddeactivating said second link, re-routing said subset of the at leastone data transmission over said first link.
 15. The method of claim 14,further comprising activating said second link responsive to saiddetermination that said utilization rate has exceeded said predeterminedmaximum utilization threshold.
 16. The method of claim 14, fun hercomprising providing notification to a network operator in response to adetermination that either said utilization rate has exceeded saidpredetermined maximum utilization threshold or that said secondutilization rate is lower than said predetermined minimum utilizationthreshold.
 17. The method of claim 14, further comprising: transmittingthe at least one data transmission over at least said first link;determining a bandwidth utilization rate of said link at which the atleast one QoS parameter is determined to deteriorate below thepredetermined quality threshold; and setting said predetermined maximumutilization threshold to a value not greater than approximately thedetermined bandwidth utilization rate.
 18. The method of claim 17,wherein said value of the link maximum utilization threshold is setwithin a range of approximately fifty-percent to sixty-percentutilization of the bandwidth capacity of said one link.
 19. The methodof claim 14, wherein said first link is associated with at least one ofan operational packet-switched network and an emulated packet-switchednetwork.